////////////////////////////////////////////////////////////////////////////////
//
//  The MIT License
//
//  Copyright (c) 2008 - 2009. Dimarik
//
//  Permission is hereby granted, free of charge, to any person obtaining a copy
//  of this software and associated documentation files (the "Software"), to deal
//  in the Software without restriction, including without limitation the rights
//  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
//  copies of the Software, and to permit persons to whom the Software is
//  furnished to do so, subject to the following conditions:
//
//  The above copyright notice and this permission notice shall be included in
//  all copies or substantial portions of the Software.
//
//  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
//  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
//  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
//  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
//  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
//  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
//  THE SOFTWARE.
//
////////////////////////////////////////////////////////////////////////////////

package ru.goodcore.utils
{
	import ru.goodcore.datastructure.Enum;
	

/**
 *
 * The NetworkingSatus class provides enum values for the detected allowNetworking 
 * parameter. 
 * 
 * You can control a SWF file’s access to network functionality by setting the 
 * allowNetworking parameter in the <object> and <embed> tags in the HTML page 
 * that contains the SWF content.
 * 
 * 
 * @author					Dimarik
 * @version					1.0
 * @playerversion			Flash 9
 * @langversion				3.0
 * 
 *
 * @keyword					networkingsatus, getnetworkingstatus
 */
public class NetworkingSatus extends Enum {

	/**
	 * All networking APIs are permitted in the SWF file. 
	 */	
	public static const ALL:		NetworkingSatus = new NetworkingSatus('all');

	/**
	 * The SWF file may not call browser navigation or browser interaction APIs, 
	 * but it may call any other networking APIs.
	 * 
	 * The following APIs are prevented when allowNetworking is set to "internal": 
	 * 
	 * navigateToURL(), fscommand(), ExternalInterface.call()
	 */
	public static const INTERNAL:	NetworkingSatus = new NetworkingSatus('internal');

	/**
	 * The SWF file may not call browser navigation or browser interaction APIs 
	 * and it cannot use any SWF-to-SWF communication APIs. 
	 * 
	 * In addition to the APIs on the list for allowNetworking = "internal" , 
	 * the following APIs are also prevented when allowNetworking is set to "none":
	 * 
	 * sendToURL(), FileReference.download(), FileReference.upload(), 
	 * Loader.load(), LocalConnection.connect(), LocalConnection.send(), 
	 * NetConnection.connect(), NetStream.play(), Security.loadPolicyFile(), 
	 * SharedObject.getLocal(), SharedObject.getRemote(), Socket.connect(), 
	 * Sound.load(), URLLoader.load(), URLStream.load(), XMLSocket.connect()
	 */
	public static const NONE:		NetworkingSatus = new NetworkingSatus('none');

	//-------------------------------------------------------------------------
	//
	//   Constructor
	//
	//-------------------------------------------------------------------------

	/**
	 * @private
	 * Constructor 
	 * @param id
	 * 
	 */
	public function NetworkingSatus(id:String) {
		super(id);
	}

}
}